#使用官方的python镜像作为基础镜像
FROM python:3.11-slim

# 设置工作目录
WORKDIR /flask-junboke

# 复制当前目录下的所有内容的容器的/flask-junboke 目录
COPY . .


COPY requirements.txt requirements.txt

#安装依赖,链接清华大学开源软件镜像站的一个链接，它提供了Python Package Index (PyPI) 的镜像服务
RUN pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip
RUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple


# 在容器中创建虚拟环境venv模块自Python 3.3版本起就成为了Python的标准库的一部分，因此在使用Python 3.x作为基础镜像时，您不需要额外安装virtualenv。结尾的venv是名称可以自定义
RUN python -m venv venv

# 激活虚拟环境
ENV PATH="/flask-junboke/venv/bin:$PATH"

# 暴露应用端口
EXPOSE 5000

# 检查gunicorn确实被正确安装了
RUN which gunicorn

# 使用 Gunicorn 服务器启动 Flask 应用
CMD ["gunicorn", "-c", "/flask-junboke/gunicorn_config.py", "main:app"]
#gunicorn -c gunicorn_config.py main:app